package com.demo.userprofile.component.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import redis.clients.jedis.JedisCluster;

/**
 * Redis相关接口
 *
 * @author userprofile_demo
 */
@Component
public class RedisService {

    @Autowired
    private JedisCluster jedisCluster;

    /**
     * 设置缓存
     *
     * @param key 缓存key
     * @param value 缓存value
     */
    public void set(String key, String value) {
        jedisCluster.set(key, value);
    }

    /**
     * 获取指定key的缓存
     *
     * @param key---JSON.parseObject(value, User.class);
     */
    public String getObject(String key) {
        return jedisCluster.get(key);
    }

    /**
     * 判断当前key值 是否存在
     */
    public boolean hasKey(String key) {
        return jedisCluster.exists(key);
    }

    // 实现key的递增
    public void incrBy(String key, long value) {
        jedisCluster.incrBy(key, value);
    }

    /**
     * 获取指定key的缓存
     */
    public String get(String key) {
        String value = jedisCluster.get(key);
        return value;
    }

    /**
     * 删除指定key的缓存
     */
    public void delete(String key) {
        jedisCluster.del(key);
    }
}
